#include <stdio.h>
#include <math.h>

#define MIN_TEMP 283.0
#define MAX_TEMP 353.0
#define TEMP_STEP  2  /* two steps pre temp */
 
int  main( void )
{

    double t;

    printf ( "#define MIN_TEMP  %f\n", MIN_TEMP );
    printf ( "#define MAX_TEMP  %f\n", MAX_TEMP );
    printf ( "#define TEMP_STEP %d\n", TEMP_STEP );

    printf ( "const float  Temp_Sqrt_Table[] = {\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, sqrt(t*64) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, sqrt(t*64) );



    printf ( "const float  Temp_1p2_Table[] = {\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.2) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.2) );



    printf ( "const float  Temp_1p7_Table[] = { /* default*/\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.7) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.7) );

                                                       

    printf ( "const float  Temp_1p680_Table[] = { /* helium */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.680) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.680) );

                                                       

    printf ( "const float  Temp_1p682_Table[] = { /* hydrogen */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.682) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.682) );

                                                       

    printf ( "const float  Temp_1p702_Table[] = { /* nitrogen */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.702) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.702) );


    printf ( "const float  Temp_1p737_Table[] = { /* air */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.737) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.737) );


    printf ( "const float  Temp_1p739_Table[] = { /* oxygen */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.739) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.739) );

                                                       

    printf ( "const float  Temp_1p81_Table[] = { /* argon */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.81) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.81) );

                                                       

    printf ( "const float  Temp_1p82_Table[] = { /* ArMe */\n");

    for ( t = MIN_TEMP ; t < MAX_TEMP ; t += 1.0/TEMP_STEP )
    {
        printf ( "/* %4.2f */ %8.4f,\n", t, pow(t*64,1.82) );
    }
    printf ( "/* %4.2f */ %8.4f };\n", t, pow(t*64,1.82) );

                                                       
   return 0;
}
